package gui;

import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;

import electro.Electrocardiograma;

import logica.Centro_de_Mensajes;
import logica.Modelo_de_Tabla;
import logica.Paciente;

@SuppressWarnings("serial")
public class Panel_Mensajes extends JPanel {
	
	private JTable tabla_mensajes;
	private JScrollPane scroll;
	private Modelo_de_Tabla modelo;
	private Centro_de_Mensajes x;
	
	/* Constructor */
	public Panel_Mensajes(Centro_de_Mensajes c){

		setLayout(new BorderLayout(2, 3));
		
		modelo = new Modelo_de_Tabla();
		c.setDatosNuevos(modelo);
		c.sub_llegada_de_nuevos_mensajes(modelo);
		c.sub_elimina_de_nuevos_mensajes(modelo);
		x = c;
		
		tabla_mensajes = new JTable(modelo);
		tabla_mensajes.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
		tabla_mensajes.setRowHeight(50);
		tabla_mensajes.addMouseListener(new MouseAdapter() {
			  
			public void mouseClicked(MouseEvent e) {
				 if (e.getClickCount() == 2) {
				     JTable target = (JTable)e.getSource();
				     int row = target.getSelectedRow();
				     if(row != -1){
						Paciente p = x.getMensajeNuevo(row).getPaciente();
						String mensaje = x.getMensajeNuevo(row).getCuerpo();
						Electrocardiograma elec = x.getMensajeNuevo(row).getElectro();
						new Ventana_Lectura(p, mensaje, elec).setVisible(true);				
					  }
				     
				 }
			}

		});
		
		scroll = new JScrollPane(tabla_mensajes);
		tabla_mensajes.setFillsViewportHeight(true);
		
		add(scroll, BorderLayout.CENTER);
	}
	
	public int fila_seleccionada(){
		return tabla_mensajes.getSelectedRow();
	}
	
}
